package com.seu.project.seuquiz.service;

import com.baomidou.mybatisplus.core.conditions.query.QueryWrapper;
import com.baomidou.mybatisplus.extension.service.IService;
import com.seu.project.seuquiz.model.dto.question.QuestionAddRequest;
import com.seu.project.seuquiz.model.dto.question.QuestionQueryRequest;
import com.seu.project.seuquiz.model.entity.Question;

/**
* @author lenovo
* @description 针对表【question(题目)】的数据库操作Service
* @createDate 2023-07-15 13:47:58
*/
public interface QuestionService extends IService<Question> {


    /**
     * 当用户做题后，更新做题总次数等
     * @param id
     * @return
     */
    boolean questionUserAdd(int id, boolean isRight);

    /**
     * 根据查询参数构造queryWrapper
     * @param request
     * @return
     */
    QueryWrapper<Question> getQueryWrapper(QuestionQueryRequest request);

    /**
     * 添加题目
     * @param content       题干
     * @param selection     选项
     * @param answer        答案
     * @param score         分值
     * @param analysis      解析
     * @param remark        备注
     * @param questionType  题目类型（单选/多选/判断/简答等）
     * @param type          类型（比如党史）
     * @param difficulty    难度(0-简单，1-中等，2-困难)
//     * @param correctCnt    被做对了的次数
//     * @param writeCnt      被做了多少次
     * @return
     */
    long questionAdd(String content, String selection, String answer, Integer score, String analysis, String remark, String questionType, String type, Integer difficulty, Integer status);
}
